package Proyecto2.Source;

import java.awt.event.KeyListener;
import java.awt.Point;
import java.awt.event.KeyEvent;

/**
 * Clase basada en el repositorio subido a la catedra por el asistente Martin Larrea (Clase 'MenteTeclado')
 * http://2014-tdp-proyecto-x-1943.googlecode.com/svn/trunk/
 * Nota: Esta es una version modificada de la original.
 *
 */
public class MovimientosTeclado extends Movimientos implements KeyListener {
	
	
	public void preparar() {
		// TODO Auto-generated method stub

	}

	
	public void jugar() {
		// TODO Auto-generated method stub

	}

	public void keyPressed(KeyEvent arg0) {
		Point pos = this.nave.getLocation();	
		int factor = 8;
		switch(arg0.getKeyCode()) {
			case KeyEvent.VK_UP: {
				if (pos.y >= 0){
					int v = pos.y - factor;
					pos.setLocation(pos.x, v);
				}
				break;
			}
			case KeyEvent.VK_DOWN: {
				if (pos.y <= juego.getHeight()-nave.getHeight()*2){
					int v = pos.y + factor;
					pos.setLocation(pos.x, v);
				}
				break;
			}
			case KeyEvent.VK_LEFT: {
				if (pos.x >= 0){
					int v = pos.x - factor;
					pos.setLocation(v, pos.y);
				}
				break;
			}
			case KeyEvent.VK_RIGHT: {
				if (pos.x <= juego.getWidth()-nave.getWidth()*1.5){
					int v = pos.x + factor;
					pos.setLocation(v, pos.y);
				}
				
				break;
			}
			
			//PARA PROGRAMAR LO DEL DISPARO
			
			case KeyEvent.VK_A: {
				Disparo disp = nave.disparar();
				disp.setPos(pos);
				juego.graficaDisparo();
				break;
			}
			
		}
		
		this.nave.setLocation(pos);
		this.juego.repaint();
	}

	
	public void keyReleased(KeyEvent arg0) {
		// TODO Auto-generated method stub
		
	}

	
	public void keyTyped(KeyEvent arg0) {
		// TODO Auto-generated method stub
		
	}
	
	public void setLogica(Juego j){
		
	}
}


